package net.lab1024.sa.admin.module.fabricmaterials.domain.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.v3.oas.annotations.media.Schema;
import java.math.BigDecimal;
import java.sql.Timestamp;
import java.time.LocalDate;
import java.time.LocalDateTime;

import lombok.Data;
import net.lab1024.sa.base.common.json.serializer.FileKeyVoSerializer;

/**
 * lyy 列表VO
 *
 * @Author lyy
 * @Date 2024-11-12 22:01:35
 * @Copyright lyy
 */

@Data
public class FabricMaterialsVO {

    private Integer id;
    @Schema(description = "耗材代码")
    private String fabricMaterialCode;

    @Schema(description = "耗材名称")
    private String fabricMaterialName;

    @Schema(description = "耗材类别")
    private Integer fabicMaterialCategory;

    @Schema(description = "规格型号")
    private String specModel;

    @Schema(description = "数量")
    private Integer quantity;

    @Schema(description = "单价")
    private BigDecimal unitPrice;

    @Schema(description = "总价")
    private BigDecimal totalPrice;

    @Schema(description = "采购途径")
    private String purchaseWay;

    @Schema(description = "存放地点")
    private String storageLocation;

    @Schema(description = "单位")
    private String unit;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    @Schema(description = "更新时间")
    private Timestamp updateTime;

    @Schema(description = "图片字段")
    @JsonSerialize(using = FileKeyVoSerializer.class)
    private String picture;

    private String categoryName;


    /**
     * 最近一次盘点数量
     */
    @Schema(description = "最近一次盘点数量")
    private Integer lastCheckQty;
    /**
     * 最近一次盘点时间
     */
    @Schema(description = "最近一次盘点时间")
    private Timestamp lastCheckDate;


    /**
     * 入库数量
     */
    @Schema(description = "入库数量")
    private Integer inStock;

    /**
     * 出库数量
     */
    @Schema(description = "出库数量")
    private Integer outStock;
    private Integer manager;

    private String managerName;



}
